package clm.logmerge.nio;

import java.util.Comparator;

public class LineComparator<E> implements Comparator<E>{

	public int compare(E arg0, E arg1){
		LineDTO dto1 = (LineDTO)arg0;
		LineDTO dto2 = (LineDTO)arg1;
		
		if(dto1.getLineDate().getTime() < dto2.getLineDate().getTime())
			return -1;
		if(dto1.getLineDate().getTime() > dto2.getLineDate().getTime())
			return 1;
		
		if(dto1.getReadOrder() < dto2.getReadOrder())
			return -1;
		if(dto1.getReadOrder() > dto2.getReadOrder())
			return 1;
		
		if(dto1.getFileReference() < dto2.getFileReference())
			return -1;
		if(dto1.getFileReference() > dto2.getFileReference())
			return 1;
		
		System.out.println("Comparing text.");
		return dto1.getLineText().compareToIgnoreCase(dto2.getLineText());
	}

}
